first order logic problems